<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Doxygen: mets::solution_recorder类 参考</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">Doxygen
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- 制作者 Doxygen 1.9.1 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'搜索','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','搜索');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('classmets_1_1solution__recorder.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#pub-methods">Public 成员函数</a> &#124;
<a href="classmets_1_1solution__recorder-members.html">所有成员列表</a>  </div>
  <div class="headertitle">
<div class="title">mets::solution_recorder类 参考<span class="mlabels"><span class="mlabel">abstract</span></span><div class="ingroups"><a class="el" href="group__common.html">Common components</a></div></div>  </div>
</div><!--header-->
<div class="contents">

<p>The solution recorder is used by search algorithm, at the end of each iteration, to record the best seen solution.  
 <a href="classmets_1_1solution__recorder.html#details">更多...</a></p>

<p><code>#include &lt;<a class="el" href="abstract-search_8hh_source.html">abstract-search.hh</a>&gt;</code></p>
<div class="dynheader">
类 mets::solution_recorder 继承关系图:</div>
<div class="dyncontent">
 <div class="center">
  <img src="classmets_1_1solution__recorder.png" usemap="#mets::solution_5Frecorder_map" alt=""/>
  <map id="mets::solution_5Frecorder_map" name="mets::solution_5Frecorder_map">
<area href="classmets_1_1best__ever__solution.html" title="The best ever solution recorder can be used as a simple solution recorder that just records the best ..." alt="mets::best_ever_solution" shape="rect" coords="0,56,149,80"/>
  </map>
</div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public 成员函数</h2></td></tr>
<tr class="memitem:a7a58f650eca66d71b23030cb24825e15"><td class="memItemLeft" align="right" valign="top"><a id="a7a58f650eca66d71b23030cb24825e15"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmets_1_1solution__recorder.html#a7a58f650eca66d71b23030cb24825e15">solution_recorder</a> ()</td></tr>
<tr class="memdesc:a7a58f650eca66d71b23030cb24825e15"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default ctor. <br /></td></tr>
<tr class="separator:a7a58f650eca66d71b23030cb24825e15"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1a3082259340761f3cb96c4eecb1d733"><td class="memItemLeft" align="right" valign="top"><a id="a1a3082259340761f3cb96c4eecb1d733"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmets_1_1solution__recorder.html#a1a3082259340761f3cb96c4eecb1d733">solution_recorder</a> (const <a class="el" href="classmets_1_1solution__recorder.html">solution_recorder</a> &amp;)</td></tr>
<tr class="memdesc:a1a3082259340761f3cb96c4eecb1d733"><td class="mdescLeft">&#160;</td><td class="mdescRight">Unimplemented copy ctor. <br /></td></tr>
<tr class="separator:a1a3082259340761f3cb96c4eecb1d733"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aeca20f015a2bbadcd8fc2beb09ba0fc1"><td class="memItemLeft" align="right" valign="top"><a id="aeca20f015a2bbadcd8fc2beb09ba0fc1"></a>
<a class="el" href="classmets_1_1solution__recorder.html">solution_recorder</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmets_1_1solution__recorder.html#aeca20f015a2bbadcd8fc2beb09ba0fc1">operator=</a> (const <a class="el" href="classmets_1_1solution__recorder.html">solution_recorder</a> &amp;)</td></tr>
<tr class="memdesc:aeca20f015a2bbadcd8fc2beb09ba0fc1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Unimplemented assignment operator. <br /></td></tr>
<tr class="separator:aeca20f015a2bbadcd8fc2beb09ba0fc1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a54c5d7c515cdb304cb3d0f449388dbc3"><td class="memItemLeft" align="right" valign="top"><a id="a54c5d7c515cdb304cb3d0f449388dbc3"></a>
virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmets_1_1solution__recorder.html#a54c5d7c515cdb304cb3d0f449388dbc3">~solution_recorder</a> ()</td></tr>
<tr class="memdesc:a54c5d7c515cdb304cb3d0f449388dbc3"><td class="mdescLeft">&#160;</td><td class="mdescRight">A virtual dtor. <br /></td></tr>
<tr class="separator:a54c5d7c515cdb304cb3d0f449388dbc3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3e0e4b5f620b372449af9cc3fb0b6dca"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmets_1_1solution__recorder.html#a3e0e4b5f620b372449af9cc3fb0b6dca">accept</a> (const <a class="el" href="classmets_1_1feasible__solution.html">feasible_solution</a> &amp;sol)=0</td></tr>
<tr class="memdesc:a3e0e4b5f620b372449af9cc3fb0b6dca"><td class="mdescLeft">&#160;</td><td class="mdescRight">Accept is called at the end of each iteration for an opportunity to record the best move ever.  <a href="classmets_1_1solution__recorder.html#a3e0e4b5f620b372449af9cc3fb0b6dca">更多...</a><br /></td></tr>
<tr class="separator:a3e0e4b5f620b372449af9cc3fb0b6dca"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a11e6cb16b79401d575bb75e3cd0115a4"><td class="memItemLeft" align="right" valign="top"><a id="a11e6cb16b79401d575bb75e3cd0115a4"></a>
virtual gol_type&#160;</td><td class="memItemRight" valign="bottom"><b>best_cost</b> () const =0</td></tr>
<tr class="separator:a11e6cb16b79401d575bb75e3cd0115a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">详细描述</h2>
<div class="textblock"><p>The solution recorder is used by search algorithm, at the end of each iteration, to record the best seen solution. </p>
<p>The concept of best is externalized so that you can record the best ever solution met or the best solution that matches some other criteria (e.g. feasibility constraints relaxed in the <a class="el" href="classmets_1_1feasible__solution.html" title="interface of a feasible solution space to be searched with tabu search.">feasible_solution</a> implementation of the cost function). </p>
</div><h2 class="groupheader">成员函数说明</h2>
<a id="a3e0e4b5f620b372449af9cc3fb0b6dca"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3e0e4b5f620b372449af9cc3fb0b6dca">&#9670;&nbsp;</a></span>accept()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool mets::solution_recorder::accept </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classmets_1_1feasible__solution.html">feasible_solution</a> &amp;&#160;</td>
          <td class="paramname"><em>sol</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Accept is called at the end of each iteration for an opportunity to record the best move ever. </p>
<p>(this is a chain of responsibility) </p>

<p>在 <a class="el" href="classmets_1_1best__ever__solution.html#acb8e2865720a67f8b8c8c5226a7cd586">mets::best_ever_solution</a> 内被实现.</p>

</div>
</div>
<hr/>该类的文档由以下文件生成:<ul>
<li>recognition/include/pcl/recognition/3rdparty/metslib/<a class="el" href="abstract-search_8hh_source.html">abstract-search.hh</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><b>mets</b></li><li class="navelem"><a class="el" href="classmets_1_1solution__recorder.html">solution_recorder</a></li>
    <li class="footer">制作者 <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1 </li>
  </ul>
</div>
</body>
</html>
